<%@page import="java.util.List"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@page import="com.erp.util.Page"%>
<%@page import="com.erp.po.Products"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
<link href="../../assets/css/maincss.css" rel="stylesheet" />
<link href="../../assets/css/but.css" rel="stylesheet" />
</head>

<!-- Bootstrap -->
<link href="${pageContext.request.contextPath}/javascript/bootstrap/css/bootstrap.css" rel="stylesheet">
<link rel="stylesheet" href="${pageContext.request.contextPath}/javascript/table/bootstrap-table.css">
<script src="${pageContext.request.contextPath}/javascript/jQuery-1.12.4.js"></script>
<script src="${pageContext.request.contextPath}/javascript/bootstrap/js/bootstrap.js"></script>
<script src="${pageContext.request.contextPath}/javascript/table/bootstrap-table.js"></script>
<script src="${pageContext.request.contextPath}/javascript/table/locale/bootstrap-table-zh-CN.js"></script>


<body>
<h3>产品管理</h3>

<table class="table table-hover" style="text-align: center;" >
	<tr>
		<td colspan="7" style="text-align: left;">
			<input type="text" id="currentPage" name="currentPage" value="1" hidden />
			<input type="text" id="pageSize" name="pageSize" value="5" hidden />
				
			<input type="text" id="seachPName" name="seachPName" placeholder="请输入产品名称" onblur="reduction()" />
			<select id="categorys" name="categorys" onchange="reduction()"> 
				<option value="0">- 请选择类别 -</option>
			</select>
			<select id="providers" name="providers" onchange="reduction()">
				<option value="0">- 请选择供应商 -</option>
			</select>
			<button onclick="searchProductBut()" class="btn btn-info">查询</button>
		</td>
		<td colspan="2" style="text-align: right;">
			<button onclick="addProductBut()" class="btn btn-success">增 加</button>
		</td>
	</tr>
</table>
<br/>
<table id="myTable"  class="table table-hover"  style="text-align: center;" >
	<!-- <tr>
		<td>商品id</td>
		<td>商品名称</td>
		<td>商品进价</td>
		<td>商品数量</td>
		<td>商品售价</td>
		<td>进货时间</td>
		<td>商品类别</td>
		<td>供应商</td>
		<td>操作</td>
	</tr>
 -->
</table>

</body>

<script type="text/javascript">




//------------------------bootstrap-table----------------------------------
$(function () {

    //1.初始化Table
    var oTable = new TableInit();
    oTable.Init();
});

var TableInit = function () {
    var oTableInit = new Object();
    //初始化Table
    oTableInit.Init = function () {
        $('#myTable').bootstrapTable({
            url: 'productServlet',         //请求后台的URL（*）
            method: 'get',                      //请求方式（*）
            pagination: true,                   //是否显示分页（*）
            
            queryParams: oTableInit.queryParams,//传递参数（*）
            
            sidePagination: "server",           //分页方式：client客户端分页，server服务端分页（*）
            
            pageNumber:1,                       //初始化加载第一页，默认第一页
            pageSize: 5,                       //每页的记录行数（*）
            pageList: [5, 10, 25, 50, 100],        //可供选择的每页的行数（*）
            // height: 500,                        //行高，如果没有设置height属性，表格自动根据记录条数觉得表格高度
            columns: [{
                checkbox: true
            }, {
                field: 'productId',
                title: '商品id'
            }, {
                field: 'productName',
                title: '商品名称'
            }, {
                field: 'incomePrice',
                title: '商品进价'
            }, {
                field: 'quantity',
                title: '商品数量'
            }, {
                field: 'salesPrice',
                title: '商品售价'
            }, {
                field: 'incomeTime',
                title: '进货时间'
            }, {
                field: 'categorys.categoryName',
                title: '商品类别'
            }, {
                field: 'providers.providerName',
                title: '供应商'
            }, {
                field: 'Desc',
                title: '操作',
                // formatter : actionFormatter
            } ]
        });
    };

    //得到查询的参数
    oTableInit.queryParams = function (params) {
        var temp = {   //这里的键的名字和控制器的变量名必须一直，这边改动，控制器也需要改成一样的
            limit: params.limit,   //页面大小
            offset: params.offset,  //页码[忽略数]
            op : "doSearchProducts",
			productName : $("#seachPName").val(),
			categorys : $("#categorys").val(),
			providers : $("#providers").val()
        };
        return temp;
    };
    return oTableInit;
};




//------------------------bootstrap-table----------------------------------



	
	// 获取的json数据
	var jsonPage = null;
	
	// 总页数
	var totalPages = 0;

	
	// ----- jquery ajax

	function seachBoth() {
		$.ajax({
			type : "GET",
			url : "productServlet",
			data : "op=seachBoth",
			dataType : "JSON",
			success : function(result) {
				// alert("Data Saved: " + result);
				// 类别数据
				var cateList = result[0];
				for (var i = 0; i < cateList.length; i++) {
					// var op = new Option(cateList[i].categoryName,cateList[i].categoryId);
					var $op = "<option value='"+cateList[i].categoryId+"'>"+cateList[i].categoryName+"</option>";
					// cate.add(op);
					$("#categorys").append($op);
				}
				
				// 供应商数据
				var provList = result[1];
				for (var i = 0; i < provList.length; i++) {
					// var op = new Option(provList[i].providerName,provList[i].providerId);
					var $op = "<option value='"+provList[i].providerId+"'>"+provList[i].providerName+"</option>";
					$("#providers").append($op);
				}
			}
		});
	}
	
	seachBoth();
	
	// ajax 查询
	/* function searchProductBut(op) {
		// jsonPage 有数据 ,当前第一页,上一页提交无效
		if (jsonPage != null && op == 1 && jsonPage.currentPage == 1) {
			return 0;
		} else if (jsonPage != null && op == 2
				&& jsonPage.currentPage == totalPages) {
			// jsonPage 有数据 ,当前最后页,下一页提交无效
			return 0;
		}

		var table = $("#myTable");
		var row;
		
		$.ajax({
			type : "GET",
			url : "productServlet",
			data : {
				"op" : "doSearchProducts",
				"productName" : $("#seachPName").val(),
				"categorys" : $("#categorys").val(),
				"providers" : $("#providers").val(),
				"currentPage" : $("#currentPage").val(),
				"pageSize" : $("#pageSize").val()
			},
			dataType : "JSON",
			success : function(result) {
				jsonPage = result;
				
				var arr = result.list;

				// 跟新当前页..页大小
				$("#currentPage").val(result.currentPage);
				$("#pageSize").val(result.pageSize);

				// 计算总页数
				totalPages = parseInt((result.total + result.pageSize - 1)
						/ result.pageSize);

				// alert(arr.length);
				// 添加数据前,如果已经有查询的数据在table里,应该先清除表格数据(使用 jquery ajax)
				$("#myTable tr:not(:first)").remove();
				
				/* var len = table.rows.length;
				for (var i = len - 1; i > 0; i--) {
					table.deleteRow(i);
				}

				// 将数据添加到table里
				for (var i = 0; i < arr.length; i++) {
					row = table[0].insertRow();
					row.insertCell().innerHTML = arr[i].productId;
					row.insertCell().innerHTML = arr[i].productName;
					row.insertCell().innerHTML = arr[i].incomePrice;
					row.insertCell().innerHTML = arr[i].quantity;
					row.insertCell().innerHTML = arr[i].salesPrice;
					row.insertCell().innerHTML = arr[i].incomeTime;
					row.insertCell().innerHTML = arr[i].providers.providerName;
					row.insertCell().innerHTML = arr[i].categorys.categoryName;
					row.insertCell().innerHTML = "<button onclick='editProductById("
							+ arr[i].productId
							+ ")' class='btn btn-success btn-sm'>修 改</button>"
							+ "&nbsp;"
							+ "<button onclick='return delProductById("
							+ arr[i].productId
							+ ")' class='btn btn-danger btn-sm'>删 除</button>";
				}
				// 添加分页
				row = table[0].insertRow();
				row.innerHTML = "<tr align='center'><td colspan='9'>"
						+ "<a href='#' onclick='upPage()'>[上一页]</a>"
						+ "&nbsp;&nbsp;&nbsp;&nbsp;" + "当前第"
						+ result.currentPage + "页" + "&nbsp;&nbsp;" + "共"
						+ result.total + "条数据" + "&nbsp;&nbsp;" + "共"
						+ totalPages + "页" + "&nbsp;&nbsp;&nbsp;&nbsp;"
						+ "<a href='#' onclick='nextPage()'>[下一页]</a>"
						+ "</td></tr>";
			}
		});

		
	}
 */
	// 上一页
	// 当jsonPage 为 null时 ,当前页设置为默认的第一页 
/* 	function upPage() {
		if (jsonPage != null && jsonPage.currentPage > 1) {
			$("#currentPage").val(jsonPage.currentPage - 1);
		} else {
			$("#currentPage").val(1);
		}
		searchProductBut(1);
	}

	// 下一页
	function nextPage() {
		if (jsonPage != null && jsonPage.currentPage < totalPages) {
			$("#currentPage").val(jsonPage.currentPage + 1);
		} else {
			$("#currentPage").val(1);
		}
		searchProductBut(2);
	} */

	// 还原数据
	function reduction() {
		$("#currentPage").val(1);
		$("#pageSize").val(5);
		jsonPage = null;
		/* $("#myTable tr:not(:first)").remove();
		searchProductBut(); */
	}

	function editProductById(id) {
		location.href = 'productServlet?op=readyEditProductById&id=' + id;
	}

	function delProductById(id) {
		var msg = "确定删除该条数据?";
		if (confirm(msg) == true) {
			location.href = 'productServlet?op=removeProductByproId&id=' + id;
			return true;
		} else {
			return false;
		}

	}

	function addProductBut() {
		location.href = 'productServlet?op=readyAddProduct';
	}
</script>

</html>